Software business platform with networked, association-based business entity access management

ABSTRACT

The invention provides a business platform, a business entity management system, and a software module that can be used in conjunction with the software service framework. The invention mimics actual business relationships between business entities, and uses a software service module to configure the business entities into a network that comprises at least three generations of business entities, wherein role dependent associations mimicking real life business relationships are established between the business entities. In addition, information as defined by business objects are configured to permit or deny access and manipulation based on user roles. Accordingly, the invention permits a user role in one business entity to potentially access information of a plurality of other associated business entities through a common business platform, based on the role of the user and the configuration of the business objects.

RELATED APPLICATIONS

This application claims priority from U.S. Provisional Patent Application Serial No. 60/438,895 entitled “NITRA ENTERPRISE PLATFORM” filed Jan. 9, 2003.

COPYRIGHT NOTICE

© 2003 Cobalt Group, Inc., Seattle, Wash. A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. 37 CFR §1.71(d).

TECHNICAL FIELD

The invention relates to software business platforms that provide a means for information sharing between separate business entities, and/or within these business entities; in particular, business platforms that may be hosted by a third party on behalf of a large number of separate business users that have a need to share certain selected information, and where access to the information should be restricted, permitted to a limited extent, or permitted based on information type and the particular user.

BACKGROUND OF THE INVENTION

In a rapidly changing high technology business environment where information management of the business organization is often a critical factor in maintaining competitiveness, it has become increasingly necessary for businesses to adopt software business platforms in an effort to enable the efficient sharing of information within a corporation. Typically, such platforms have a database that stores corporate information, business application software for its business functions (typically Finance, Sales, Marketing, etc.) a security or user access system that controls access to the information by a number of users that are assigned roles that permit or deny access to the information, based on the assigned role of the individual, and a system bus that provides an interface permitting the various components of the system to communicate with each other according to certain protocols. However, in many instances, these business platforms may have developed separately over time so that the various modules relating to business functions, such as marketing and sales, may have different configurations, and may be coded in different software languages, thereby complicating communication between the modules and adding complexity to information sharing between corporate divisions and the generation of reports for management. Further, as business organizations grow in size, complexity and need for more information sharing, the business platforms and modules often lack sufficient scalability to keep pace.

The issues that pertain to intra-business software platforms is further complicated when the business platform is one that serves a variety of separate business entities, that may be independent corporations, partnerships or other business entities, and that may be hosted by a third party. For a variety of reasons, it may be desirable for these separate and independent business entities to share information. For example, in a franchise operation, it may be desirable for franchisees (that are independent corporations) to share information with a franchisor, and it may also be necessary for and desirable for franchisees in a regional area to share information between themselves, with regard to certain functions, such as marketing, but perhaps not with regard to other functions, such as finance. This would be further complicated if several franchise operations were to share the same platform, hosted by a third party. Clearly, information sharing between franchises would not be desired or allowed but some franchisees might hold multiple franchises. Accordingly, the sharing of information is not only complicated due to the separate business entities involved, but also the degree and extent of information sharing that is required.

Further, in an inter-business software platform, that may be hosted by a third party, it might be expected that the separate business entities may each have before hand developed their own business modules, for example each might already have developed their own marketing, sales, accounting and web management modules, before the advent of the hosted platform. There may be a considerable difference between the nature, configuration, language, etc. of the modules between the businesses that must now share certain information. This presents highly complex integration and information sharing issues to be resolved.

SUMMARY OF THE INVENTION

The invention provides: a business platform having a unique business entity management module; a business entity management system; and a software module for controlling user access to and manipulation of information shared by users through a common platform.

The business platform of the invention includes a service framework that supports business applications, and that is supported by at least one service module. The service module controls access, and the extent of information manipulation, by business entities who use the service framework, through users with assigned roles.

In accordance with the invention, the service module arrays the business entities as a user role-dependent network of associated business entities by mimicking actual business relationships. The network is contextual in that the associations are role-dependent and vary depending upon the user's role, reflecting the real world circumstance that various business functions need different information, often obtained from different sources. In one embodiment, the network includes at least three generations of business entities, and is configured such that associations are established between at least some business entities in neighboring generations, and also between at least some business entities in non-neighboring generations.

Further, information that is accessible through the service framework are defined by business objects. These business objects are configured to permit or deny access based on the role of the user, and if the user is permitted access, to specify the extent to which a user is allowed to manipulate the information (e.g. view only, edit, delete, create, modify, aggregate, etc.). Accordingly, a duly authenticated user that logs onto the service framework, in the role of an associate of a business entity, is permitted or denied access to the business objects, based on the role of the user and whether the user's business entity has an association with the owner of that business object. Further, the extent of manipulation of business objects to which access is permitted is also controlled, based on the configuration of the business object with regard to the role of the user.

The invention also provides a business entity management system for permitting or denying a business entity access to information of other business entities, where a plurality of entities use a common business platform. The system includes arraying the business entities as a role-dependent network of associated business entities, where the associations mimic actual business relationships and needs for information sharing, as explained above. In one embodiment, the network includes at least three generations of grouped business entities, the network is also configured such that associations are established between at least some of the business entities in neighboring generations, and between at least some of the business entities in non-neighboring generations. The system is fully recursive so that accessing by a first business entity from a second business entity, for example, will also potentially access information of any additional business entities associated with the second, depending upon permission rules relating to roles and business objects. As discussed above, the system also controls user access to information by using the role of the user, the business object configuration, and the networked associations to permit or deny access.

The invention also provides a software module that can be used in conjunction with a service framework. The service module includes means for communicating with the service framework, such as an interface. It also includes means for configuring a plurality of business entities to control business entity access to information and extent of information manipulation, if access is permitted. The module uses the roles and related business associations, and the configuration of the business objects (that represent information), to permit or deny access and extent of manipulation of information by a user.

The business platform of the invention is scalable in that it permits ready addition of business entities and business and service modules. New business entities are added with relative ease after business relationships of its users are established because the associations with other business entities used in the role-based networked system are based on these relationships and needs. The recursive nature of the business entity management module further simplifies addition of a new business entity in that only direct associations within the same generation and closest neighboring generations need to be established. All others are automatically available via these initially established associations. The platform is furthermore flexible in supporting legacy applications through use of interfaces. The platform can find application in a wide variety of businesses, and may or may not be hosted by a third party for businesses that need to share some (but not all) information for enhanced productivity, marketing, sales economies of scale and overall competitiveness.

Additional aspects and advantages of this invention will be apparent from the following detailed description of preferred embodiments, which proceeds with reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagrammatic representation of an example of a business platform in accordance with the invention;

FIG. 2 is a diagrammatic representation of an example of a business platform in accordance with the invention, in the automotive business context;

FIG. 3 is a representation of an example of a business association network mimicking business entity relationship network, in accordance with the invention, for a particular user; and

FIG. 4 is a representation of another example of a business association network mimicking business entity relationship network, in accordance with the invention, for another user.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

In accordance with the invention, it has now been recognized that a software business platform should have certain attributes in order to provide enhanced functionality. These attributes includes scalability, flexibility, the capability to successfully integrate legacy systems, the ability to permit individual users to make changes and to customize certain business application modules (for example those relating to the website of the individual user), and data control that preferably mimics the actual business relationships between parties that have access to the information shared through the business platform. This mimicking should not only take into account which party (business entity) shares information with which other party, but also the extent of information shared and that the extent of sharing may be dependent on the nature of the information and the role of the user (who is typically an employee of a business entity). Thus, for example, while certain business entities may wish to share all inventory information (“inventory business objects”) about certain products through their respective sales managers, they may not want to share that information for all products; and while they might want to share certain marketing information (“marketing business objects”) through their respective marketing managers, other marketing information might not be shared. Further, information sharing may be dependent upon business entity type. Thus it may be unrestricted from one business entity type to another (e.g.: franchisee to franchisor) but otherwise restricted when information flow is reversed (e.g. franchisor to franchisee) and further customized for other business relationships (e.g.: franchisee-franchisee; vendor-franchisee, etc.).

The invention provides a business software platform that Includes the features described above. It is scalable in that it can be extended, with minimal effort, to include large multiples of users on the same platform. Further, the platform is also scalable in the sense that it is readily extendable to support multiples of business applications, including but not limited to applications relating to marketing, sales, finance, website management, and such other business functions as are necessary or desired. Further, the platform of the invention may be used with “legacy” modules through the use of interfaces, either a core service interface, a business interface, or an object interface to communicate through the system bus, as discussed below. The business platform also permits individual users (within business entities) that have system permission to modify data, and to customize aspects of data presentation, such as in report generation and website management. The platform is configured to set up associations between business entities that mimics real life business relationships between the businesses and to allow, deny or restrict information (business objects) access and sharing based on these relationships. [“Relationship” refers to a real life business context and “association” refers to the software context.] The extent of information sharing (or denial of access to information) is controlled through the configuration of the business objects representing the information and whether that configuration permits access by a certain user and the limits to his/her access; for example rights to create, view only, edit, copy, amend aggregate into a report, or supplement the information, as further explained below.

To the extent that the business platform is a hosted platform for a large number of separate business entities, the platform permits reduction in overhead costs, maintenance costs, new user add in costs, and provides better integration (and system stability) through the use of a single unified architecture.

An example of the business platform of the invention is shown in a simplified, illustrative sketch, FIG. 1. The platform 100 includes a service framework 102, and a series of service modules 104. The framework 102 is immediately aware of services that are connected to it, and provides messaging and other core services to the connected services. Every service on the business platform has authenticated access to potentially use any other service on the framework, regardless of the location of that service.

Of the service modules 104, two will be discussed here below, although it should be understood that additional service modules may be added, as needed for particular uses and applications of the platform. As shown, the example of the platform includes a core service module 104 a and a business service module 104 b. This combination of service framework 102 and service modules 104 forms a platform 100 that supports a wide variety of business applications 106. These applications will vary depending upon the nature of the businesses being supported. Generally, however the applications relate to core business functions, such as Sales, Marketing and Finance, and thus include, but are not limited to inventory management, data warehousing and data mining, and the like applications. An example of each of the core and business service modules is discussed in more detail, here below.

It should be understood that the business platform 100 may be used as either a business platform that hosts a wide variety of separate business entities that have a need to share information, or may be used by a single business entity that might have a plurality of separate users. For example, in the intra-business context, the business platform may be useful to a retail department business organization that has department stores in various geographic locations. Consequently, one might expect the individual department stores to have a need to share information with a (local) regional office, and for all regional offices to share information with a corporate headquarters. Further, there may be a need to share information between regional offices, and a need to share information between department stores in various locations for various business purposes. Further, the platform can support several retail department stores that are totally separate organizations. Thus a third party could for example host a platform for such organizations as Neiman Marcus, Nordstrom and Walmart. Accordingly, the business platform is flexible and fully adaptable to the needs of a variety of structured business relationships, either within a business organization, or between a large number of separate business organizations that share a hosted platform.

Returning to FIG. 1, the architecture of the business platform of the invention is preferably a tightly integrated extension of the Sun Microsystems™ (Sunnyvale, Calif.) J2EE software platform. Every feature of J2EE is available to services conforming to the business platform interfaces. The business platform is preferably an application server that runs on J2EE servers; e.g. Weblogic (a product and trademark of BEA Systems) or Websphere (a product and trademark of IBM Corporation), although other such equivalent servers are also useful. These servers provide a variety of benefits including but not limited to:

-   -   Investment protection from extensible, industry standard,         cutting-edge technology.     -   A scalable technology solution that streamlines processes and         reduces maintenance costs.     -   A flexible security model that allows system administrators to         authorize designated users for different tasks.     -   Platform independence (runs on Unix, Mainframe, PC, etc.).     -   Internationalized software capabilities that allow for rapid and         efficient localization.

By building on the design concepts described in the above sections, the invention has been able to create a suite of tools for business users. An overview of each of those services, as well as the business platform follows.

The first business platform service type, Core Services, provides the underlying service infrastructure of the business platform. Core Services may provide, for example, such functionality as:

Service Protocols: Allows connection into the business platform via protocols such as HTTP, HTTPS, RMI, SMTP, JMS, and SOAP.

Discovery/Location: Advertises the business platform services that can be securely defined, discovered and integrated in the business platform framework. This direct service-to-service integration over the business platform is a core building block of the business platform-based applications.

Naming: Provides a naming service for the object discovery mechanism.

Authentication/Security: Provides authentication for users, applications, and services that want to use other services of the framework.

Internationalization: The business platform preferably adheres to Sun MicroSystems' “i18n” standards or equivalent for internationalization and localization. Textual messages are stored outside the source code so new language support does not require re-compilation. Culturally-dependent data, such as dates and currencies, appear in formats that conform to the user's region and language.

Transaction Handling: When applications invoke transactions across the business services, they have to be able to access data across those services. Transaction handling provides the two-phase commit mechanism to support distributed transactions.

Messaging: Provides messaging services that allow identical communications both internally within the framework and externally with outside applications.

Persistence: Saves data to underlying persistent storage (most commonly these are relational databases).

The second business platform service type shown in FIG. 1 is the Business Service Module 104 b. Business Services are all the different types of business functionality that are available to the business platform users. The business platform may have a number of pre-packaged Business Services. Or business entities (or other software developers) can create Business Services. These business services are clearly somewhat dependent upon the nature of the businesses being served. For example, in a hosted platform in the automotive area, linking dealers, regional dealer groups and manufacturers (“OEMs”), non limiting examples of the business platform Business Services Modules may be:

-   -   Configuration (an application that configures autos, used by         potential customers)     -   Inventory Management     -   Lead Manager (manages new potential sales leads)     -   Traffic Reporting (website visitation analysis and reports)     -   Asset Library Management (digital media repository)     -   Website Management     -   Logging

Clearly, for other types of businesses, these services may vary from the above listing. Each of the Business Services may constructed using whatever language or technology the business entity desires; only the business platform interface of the invention is required to be implemented by all the business platform services. The interface is defined as a common Java Object, as well as a standardized specification by which the service is implemented.

The Business Service communicates with and across the business platform via bus interfaces and object interfaces. The framework 102 can support any piece of functionality that a business entity would like to use with the business platform, as long as these interfaces are implemented. For example, if a business entity preferred to use its own configurator rather than any of the configurators that a hosted system provides, it could do so by creating a configuration business service that integrates with the business platform framework and object interfaces that the host publishes and documents. The ability to interact with the framework via this set of interfaces enables the business entities to each change out applications modules at any time.

In addition to the interfaces, each Business Service 104 b needs and uses a Core Service 104 a. Each Core Service 104 a provides an interface that allows it to be used by the Business Service in a standard way. For example, a Business Service might use the persistence and security Core Services, and would use Core Service interfaces that allow for that communication via Application Programming Interfaces.

The illustrative example of a platform in accordance with the invention shown in FIG. 2, relates in particular to the automotive industry from the perspective of a particular dealer. It should be understood that the illustrative example of the platform of the invention is a hosted platform, in which services are provided to dealers, regional dealer groups, and manufacturers (“original equipment manufacturers” or “OEMs”). The OEMs include manufacturers of automobiles, as well as manufacturers of components supplied as original equipment, such as tires, parts, audio equipment, and the like. As shown in FIG. 2, the platform 100 includes both the service framework 102 and core services 104, as described in relation to FIG. 1, and in addition provides a range of Business Application Modules 106, also known as “tools”. These tools include, but are not limited to, a User Administration Application 106 b, a Marketing Library Manager (MLM) 106 c and a Website Manager (HWM) 106 a. The Website Manager 106 a has tools that include at least the following: configuration, inventory management, lead management, traffic reporting, asset library management, website management, and logging. The Marketing Library Manager 106 c permits dealers to access a variety of digital multimedia assets that include pictures, logos, videos, audio or text from advertising agencies, OEMs, and other sources as provided through the platform.

Dealers can use the website manager to edit and publish in real time. Dealers can also establish various permission levels for staff members to permit them to access the system, and to make permitted modifications, based on the level of access allowed. Further, the platform permits input of third party content, from a dealer group, OEM advertising association, and optionally also from a host of the platform, in hosted applications. The Dealer can use third party applications as well, through use of the interfaces of the service framework.

Taking as an example the automotive hosted platform discussed above, the business platform infrastructure provides a system that allows dealer groups to provide whatever design elements they would like for their websites from any source, (i.e. agencies, Web design firms, etc.) using host-provided tools. The dealer groups can then activate and manage those websites with common tools, and integrate all the elements together into one manageable package. The tools are provided through the Business Services in a consistent user interface.

The Hosted Website Manager for the business platform (HWM) is used to configure, save, publish and activate consumer-facing websites. Site editing operations are serviced by the EJB (Enterprise Java Bean) tier, including those in which media assets are being selected or manipulated for use in constructing a client's website. These services may also be used when installing an order for creating a new website.

Again, in the context of an automotive platform, or a platform in which many entities will use the same marketing assets, the invention includes a Marketing Library Manager (MLM), as discussed above, which is the source for all digital marketing assets such as images, video, audio, and text content for any application or website that is developed for the business platform. The MLM is preferably organized hierarchically in libraries and folders. The media assets are managed in a media repository, and may be published to a “live” asset area in a shared file system before general use in applications, on constructed sites, or in the Website Manager. The MLM services preferably provide an abstraction layer independent of any underlying repository storage mechanism. This enables better integration of external content.

In the same context, the MLM services are preferably integrated with Artesia TEAMS (a product and trademark of Artesia), or another suitable digital asset management system. Clearly, other asset and content management back-ends can also be integrated with the business platform.

The MLM user interface verifies the credentials of the logged-in user to determine which media libraries can be accessed and the extent of use permitted, as explained below. Website Manager and the design tools use the MLM services for adding new content or modifying existing content on consumer-facing websites.

As will now be explained, the platform of the invention controls information access and degree of manipulation through a Business Entity Management core service module that is based on (1) business entity association with other business entities mimicking real life relationships and information needs, based on user roles; (2) the role assigned to a user; and (3) the configuration of the relevant business objects to allow access to or manipulation by the user.

A “business entity” in the business platform of the invention is anyone or any corporation, partnership or other entity that can access the business platform applications or data through a user. Thus, for example, a dealer, dealer group or OEM in an automotive platform would be a business entity, while a manager of sales (a user “role”) might be a designated user that has permission through his/her assigned role within the business entity to access the platform. A business entity in the platform of the invention is part of a network of associated business entities that mimics real life business relationships between these entities. The network is contextual in that it is role dependent. Thus for each user role, the network may be different from other user roles due to the nature of actual business relationships and information needs. Thus, whenever a new business entity is added to the platform, all that must be established are the roles of the users, and the other entities already in the network with which it will have direct relationships through its normal course of business. This permits ease of adding new business entities to the system by establishing its “associations” in the network, for each role. “Associations” represent the relationships between business entities in the platform; for example, OEMs, dealer groups, and dealers, in the automotive platform context. The business platform must know business entity associations to control access to and permitted use of business objects (“pieces of information” ) in libraries, assets, and configured widgets across those associations. “Widgets” are defined as active content that can be configured by an administrator. Permitted “uses” or “manipulations” of information accessible via the platform include viewing only, editing, creating, modifying, supplementing, report generation, and the like. Business entities, like users, can also be assigned roles, and each business entity can perform dual positions in the business entity, association, and role system. This provides a flexible way of managing the interactions between the various business objects and actors, as explained below.

With reference to FIG. 3, an illustrative example of the role dependent networked business relationships that are emulated in the business platform of the invention, there are shown a number of business entities (represented by circles) arrayed in series of “generations”. At the lower level, there is a group of business entities designated generation 1. Moving up the diagram, the next generation is generation 2, and so forth up to generation n. Thus, the business platform can accommodate a large range of generations that have business associations with each of its neighboring generations, represented by the linking lines. For ease of explanation, assume that the business platform is a hosted platform used in the automotive business area. In this case, the business entities shown at the level of generation 1 may be visualized as automotive dealers. The business entities shown at the level of generation 2 may be regarded as regional dealership groups; and the business entities at generation 3 may be viewed as OEMs. Clearly, the platform can accommodate more than 3 generations, but these 3 generations will suffice to explain how the business relationship configuration is used to control information access and use and one of skill in the art can readily extend this to include more generations for a particular application.

Note that dealer d2 belongs to both dealer group g1 and dealer group g2. This is a real life situation, in which a single dealer may be franchised to sell 2 different product lines, for example Saab and Volkswagen cars. Accordingly, dealer 2 will have a business relationship with 2 regional dealer groups, as shown by the association between them in FIG. 3. Likewise, as shown in the diagram, dealer d3 has associations with 3 dealer groups (g1, g2 and g3), because it sells 3 different product lines, and is therefore affiliated with 3 different dealer groups. On the other hand, dealers d1 and d5 each only associate with a single dealer group, since they have only 1 franchise each.

Note further that at the second generation level, some of the regional dealer groups g1, g3, and g3 have associations with each other. This association between dealer groups is also based on business relationships. For example, one dealer group may be based in Seattle, while another might be based in Denver, but both dealer groups sell the same line of automobiles. Accordingly, it might be necessary and desirable for an exchange of information regarding sales, marketing and other business information regarding sales of an automobile product line in the two regions. As a general rule, such associations between colleagues of the same generation can be established for any generation, based on the existing business relationships.

At the generation 3 level, the automobile manufacturers, tire manufacturers, and other suppliers of original equipment (OEMs) have associations with the regional dealer groups, and may have access to certain information of these. However, each OEM is restricted to access only information relating to its products, and not product lines of other OEMs, as explained below, through configuration of business objects and taking into account user roles.

For the sake of simplicity, one can view the above described “generational” business relationships as “parent-child” relationships, where the OEMs are parents, the dealer groups are children, and the dealers are “grandchildren”. The dealers stand as “children” to the dealer group “parents”.

Referring to FIG. 3, it is also apparent that there is in this example no direct relationship shown between generation 3 and generation 1. The only communication is through generation 2. This not always the case. In many circumstances, depending upon user role, direct associations between generations 1 and 3 is a reality of the actual business relationship. The example of FIG. 3 was added to illustrate the role-dependent nature of the networked associations. Thus, for example, a user at an OEM might want access to dealer inventories for production scheduling reasons. This can be effected through direct information transfer from dealer to OEM once the association between dealer and OEM is present in the platform for the user seeking the information. Note further that the network is fully recursive; so that, for example, when OEM Ml seeks permitted information from dealer group g1, it also has access to permitted information through g1 to information from d1. This recursiveness is a significant feature of the invention that simplifies the adding of new business entities to the networks: only immediate or closest business relationships must be mimicked by associations with already existing entities in the network, other associations result automatically from prior established associations of the already existing business entities. Thus if d3 is newly added, only associations with g1, g2 ,and g3 need be specified. The associations with M1 result automatically by recursion.

The above discussion, relating to FIG. 3, sets forth a basic notion of associations between the business entities, in accordance with the invention. However, as explained before, business entity associations are also contextual in the sense that they are dependent upon the role of the user (“role-dependent”) within the business entity. Therefore, for example, the networked association illustrated in FIG. 3, may for example relate to the role of an accounting manager for one of the dealer groups, or for any one of the other generations shown. The information requirements of a marketing manager of one of the business entities might be quite different, and could be illustrated as shown in representative diagram FIG. 4, for example. In this FIGURE, it can be seen that there are now direct associations between generation 3, the OEMs in the automotive context, and generation 1, the dealers. This direct association might be necessary for the dealers to update digital multimedia images and other information from the OEM's MLM for use on dealer websites. Further, the OEMs might have an interest in the nature of automobiles being configured by consumer users, using configurators on the dealer websites. This kind of information might provide the OEMs with valuable insights as to consumer preferences. Accordingly, such direct associations might be both necessary and desirable, and may reflect real life relationships.

From the foregoing, it should now be apparent that user role plays an important part in establishing the associations between business entities for persons in that particular role; i.e. the associations are role based. Thus, each business entity will have as many networked associations as it has user roles; one of these networks corresponding to each of its roles that has access as a user.

The platform of the invention also controls access to information, as most broadly defined, through configuration of its “business objects”. Thus, each of the business application modules, and their content, and all content in data bases of business entities that are intended to be shared, are business objects. The information to be shared is not narrowly defined or restricted in the invention, but can be any information in the system. In other words, the business objects representing information or data are abstract concepts in this context.

In the invention, each of the business objects is configured for permission or denial of access depending upon the role of the user seeking access. Further, in the event access is not denied, but is granted, access can be restricted in several ways by object configuration. For example, the business object may be configured to deny access completely to a user with a particular role or to permit “view only” access, or access to manipulate, and manipulation can be restricted to edit, modify, supplement, create, and/or delete. Further, access may be restricted, based on user, and business object configuration, to permit or deny the user the right to aggregate information to generate the reports that include the particular business objects. Thus, for example a parent (e.g. dealer group) might have access to all children (dealers in its group) inventory and can run a report showing all of this. But, the child might or might not have permission to generate or view the same report. In some instances, a user may only be allowed to see part of a report or to generate a report based on only certain information allowed for that user. According to the invention, that there are parts of the report or information withheld from this user, would not be apparent to the user. Users of each business entity within each franchise could receive permissions to view, edit, create, modify or supplement all, some, or none of the applications, reports, or website information associated with their own business entity's franchise. In particular cases, users from non associated business entities may also be expressly granted roles and permissions bypassing any (lack of) actual business relationship. This is not common, however.

Accordingly, the platform of the invention uses a flexible range of parameters based on business entity association (mimicking real life relationships and information needs) in the context of user role, and business object configuration to control access to information of all kinds, in the same way that businesses in the real world would want to structure their informational relationships.

When a user logs into the system, the usual precautions are taken to authenticate the user by login ID and password. Once the user is logged in, and his/her role is identified, the user can look at and manipulate all information available to his/her role and business entity to which he/she belongs, without any appearance via the user interface that not all the system information available is available to the user. The user can access information to which it is allowed access (based on business entity and role), and can manipulate it to the extent permitted to its role.

The addition of new business entities is also straightforward. Once all roles of the new entity are established, and relationships for each role with its parent, child and sibling business entities, associations are set up for each role. This automatically sets up other relationships in the network based on prior associations of the parent, siblings, and children because the system is fully recursive, as explained above. In some instances, direct association outside of the “parent child sibling” context must be added, e.g. to a grandparent (as in the case of dealer to OEM).

The business platform Business Entity Management, as described above, ensures that business entity users only receive permission to access (to view, modify, edit, supplement, create, etc.) applications, data, and websites (all regarded as “information” made up of “business objects”) that are appropriate for their assigned role within the entity to which they belong. As can be understood from the foregoing, once created, business entities become the nexus from which almost all resources are referenced. These resources include users, applications, asset libraries, websites and product packages.

The platform also includes an optional Collection Management Sub-system (CMS) that provides the necessary functionality involved in creating and managing collections. A “collection” is any set of business entities which share a common property, like the new car franchised dealers of an OEM's dealer network. The CMS allows the business platform to “collect” groups of products under (or in association with) certain business entities. An actor will create a collection of product packages or products in order to perform actions in aggregate via the platform. For example, in the automotive context, an actor may create a collection that contains all the Toyota-endorsed websites in order to share a Toyota OEM library. Collections make it possible to take action (i.e. updating a website design, or deploying a new application) across an entire OEM or dealer group dealer network (or any subset) by a central authority.

WebEngine (a product and trademark of Cobalt Group, Inc. of Seattle, Wash.) or an equivalent may be used, as the underlying Core Service used by Website Manager, tool for maintaining and publishing websites. WebEngine is designed to offer core services and persistence for any application or subsystem that interacts with website content management.

In addition, a Design Management Tool provides an interface to import, update and delete design-related information. Design components may vary depending upon the industry, but all these are preferably managed through the tool and include the following, in the automotive context:

-   -   Designs     -   Design Families     -   Navigation Templates     -   Page Layouts     -   Page Types     -   Footers

Designs can be created by any party with access to the Design Management Tool. Designs created are preferably output as XML DTD documents and loaded into the WebEngine for publishing. Sites published based on a design can be edited, regardless of creator, through the Website Manager.

The platform also has a User Management Tool, an administration application that allows for the creation of first administrator user and first user and also provides the capability to search for and edit users and user profiles. Once these users are created, the administrator can create and manage additional and existing users.

An Order Management System is responsible for receiving order information, for example from a preexisting legacy system using the Enterprise Application Integration services (EAI), and saving it in the business platform system. The order information is used to initialize the site and customize website products and dealer tools.

The business platform is, as explained above, designed to integrate seamlessly into legacy systems within an enterprise using enterprise application integration APIs. The business platform's EAI capabilities are used for:

-   -   Communicating via the business platform Service framework. The         business systems use EAI to notify Business Entities of         relationships and associations that exist between them, and to         broker data and provide process integration with other         applications.     -   SalesLogix (a product and trademark of Interact Commerce         Corporation, a Division of Best Software of Scottsdale, Ariz.)         is the preferred source for customer information. Utilizing EAI,         the business platform uses the account information from         SalesLogix to create business entities. Creating and updating         accounts and contacts are the triggers for the transfer of data.

The Order Tracking Service, preferably built on an Oracle or other equivalent database, is used to track the status of orders. This service notifies other business platform services of changes in the status of an order via EAI.

Business partners and other users of the business platform-based systems have a multitude of business to business (“B2B”) integration options. Integration services within the business platform accept adapters conforming to Content Management Systems (CMS), such as for example, Vignette (a product and trademark of Vignette of Austin, Tex.) and TeamSite (a product and trademark of Interwoven of Sunnyvale, Calif.). Integration packages, such as BusinessWare (a product and trademark of Vitria of Sunnyvale, Calif.) and webMethods (a product and trademark of webMethods of Sunnyvale, Calif.), and the like are similarly accommodated. Using the business platform in this manner provides a wide range of possibilities, including the ability to propagate personalization and website designs from commercial CMSs to the business platform-based systems.

In the automotive context, used as an example to explain and highlight features of the platform of the invention, the business platform provides a robust, flexible system that allows dealer groups and dealers to manage their online business easily in a rapidly evolving world of technology. The business platform architecture uses software systems to provide security, availability, scalability, extensibility, and ease of use, while at the same time allowing for rapid growth and investment protection. The elements that make up the business platform provide business entities with many options to build, distribute, and manage their e-business solutions.

It will be obvious to those having skill in the art that many changes may be made to the details of the above-described embodiments without departing from the underlying principles of the invention. The scope of the present invention should, therefore, be determined only by the following claims. 

1. A business platform, comprising: a computing device to access a network datastructure, comprising: a plurality of business entity representations, each representing a respective physical business entity and comprising a plurality of users, wherein each user is assigned a respective role within the respective business entity representation, and a plurality of configurable links, each link connecting two or more of the business entity representations in the network datastructure; wherein the computing device is programmed to provide a service framework shared by the plurality of physical business entities and to control access to information accessible through the service framework by the plurality of users using both the configurable links connecting the business entity representations in the network datastructure and the respective roles assigned to the users, wherein access to information of a first one of the plurality of business entity representations by a particular user of a second one of the plurality of business entity representations is based on whether the configurable links connect the first and the second business entity representations in the network datastructure and the role within the second business entity representation assigned to the particular user.
 2. The platform of claim 1, wherein one or more of the plurality of users has access to the platform, and wherein access to the platform by the one or more users is controlled by rules comprising authentication and security requirements.
 3. The platform of claim 1, wherein rights of the particular user of the second business entity representation to access information of the first business entity representation depend upon a combination comprising configurable links between the first and the second business entities in the network of associated business entities, the role assigned to the particular user, and a configuration of a business object representing the information of the first business entity representation.
 4. The platform of claim 3, wherein the rights of the particular user to access information of the first business entity representation comprise rights to manipulation of the information, comprising rights to view, edit, copy, and modify the information.
 5. The platform of claim 1, wherein the configurable links connecting the plurality of business entity representations are hierarchical, comprising at least three generations of business entity representations, wherein one or more of the configurable links connect at least some entity representations in neighboring generations, and one or more of the configurable links connect at least some entity representations in non-neighboring generations.
 6. The platform of claim 5, wherein the platform is an automotive business platform, and the at least three generations comprise dealers, dealer groups and OEMs, respectively.
 7. The platform of claim 5, wherein the platform is a franchise operation business platform, and the at least three generations comprise franchisees, franchisee groups and franchisers.
 8. The platform of claim 1, wherein a user assigned a role granting the user rights to access information of a first business entity representation automatically grants the user rights to access corresponding information of a second business entity representation based on a configurable link between the first business entity representation and the second business entity representation in the network of associated business entities.
 9. The platform of claim 1, wherein a user assigned a role granting the user rights to manipulate information of a particular type of a first business entity representation automatically grants the user rights to manipulate information of the particular type of at least one other business entity representation having a configurable link with the first business entity representation in the network of associated business entities.
 10. The platform of claim 1, wherein the configurable links connecting the plurality of business entity representations correspond to pre-determined business relationships between the respective physical business entities, and wherein a pre-determined business relationship between one or more of said plurality of physical business entities comprises a franchisor to franchisee business relationship.
 11. The platform of claim 1, wherein the configurable links connecting the plurality of business entity representations correspond to pre-determined business relationships between the respective physical business entities, and wherein a pre-determined business relationship between one or more of said plurality of physical business entities comprises a vendor to franchisee business relationship.
 12. The business platform of claim 1, wherein a first user of the first business entity representation is assigned a particular role and a second user of the second business entity representation is assigned the same particular role, wherein the network of associated business entities includes a configurable link between the first business entity representation and a third one of the plurality of business entity representations and does not include a configurable link between the second business entity representation and the third business entity representation, and wherein the computing device is configured to grant the first user access to information of the third business entity representation and to deny the second user access to information of the third business entity representation based on the configurable links.
 13. A method for permitting or denying access to information through a common business platform, the method comprising: a computing device accessing a network of associated business entity representations, a plurality of business entity representation, each representing a respective physical business entity, wherein each of the business entity representations comprises a plurality of users each of which is assigned a respective role within the business entity representation, and a plurality of configurable links, each link connecting two of the business entity representations in the network of associated business entity representations; the computing device receiving a request for information of a first one of the plurality of business entity representations from a user; the computing device determining a business entity representation of the user and a role assigned to the user by the business entity representation; and the computing device determining whether to permit or deny the requested access based on whether the configurable links connect the first business entity representation and the business entity representation of the user in the network of associated business entities and the role assigned to the user within the business entity representation of the user.
 14. The method of claim 13, wherein a first user of a second one of the plurality of business entity representations is assigned a specified role within the second business entity representation and is permitted access and manipulation rights to a first set of specific information of the first business entity representation, and a second user of the second business entity representation is assigned a different specified role and is permitted access to a second set of specific information of the first business entity representation, wherein the second set of specific information comprises at least some of the first set of specific information.
 15. The method of claim 13, wherein the request comprises a request for access to a business object of a second one of the plurality of business entity representations and wherein determining whether to permit or deny the requested access to the business object of the second business entity representation is based on a configurable link between the first and the second business entity representations in the computer readable storage medium and the configurable link between the first business entity representation and the business entity representation of the user in the network of associated business entities.
 16. The method of claim 13, wherein the request comprises a request to manipulate a business object of the first business entity representation, and wherein determining whether to permit or deny the request is based on the configurable link between the first business entity representation and the business entity representation of the user in the network of associated business entities, the role of the user, and a configuration of the business object.
 17. The method of claim 13, wherein the plurality of business entity representations have a potential to share information via the platform.
 18. The method of claim 13, wherein the configurable links between the plurality of business entity representations are hierarchical, comprising at least three generations of business entity representations, and wherein one or more of the configurable links connect entity representations in neighboring generations, and one or more of the configurable links connect at least some business entity representations in non-neighboring generations.
 19. A computer readable storage medium having stored thereon computer readable program code to perform a method for controlling user access to and manipulation of information, the method comprising: accessing a network data structure comprising, a plurality of business entity representations, each business entity representation representing a respective physical business entity, a plurality of users, each user being associated with a respective one of the plurality of business entity representations and being assigned a respective role within the respective business entity representation, and a plurality of role-dependent configurable links, each connecting two of the business entity representations in the network data structure; receiving a request for information of a first one of the plurality of business entity representations from a particular user of a second one of the plurality of business entity representations; identifying which of the role-dependent configurable links apply to the particular user based on the role of the particular user within the second business entity representation; and determining whether to grant the requested access to information based on whether the identified role-dependent configurable links connect the first business entity representation and the second business entity representation in the data structure and the role assigned to the particular user within the second business entity representation, wherein the role-dependent configurable links that apply to the particular user differ from role-dependent configurable links that apply to a different user of the second business entity representation assigned a different role within the second business entity representation.
 20. The computer readable storage medium of claim 19, wherein the request comprises a request to manipulate information of the first business entity representation, and wherein the method further comprises determining whether to grant the request based on whether the identified role-dependent configurable links connect the first business entity representation and the second business entity representation in the network data structure and the role within the second business entity representation assigned to the particular user.
 21. The computer readable storage medium of claim 19, wherein the role-dependent configurable links between the plurality of business entity representations are hierarchical, comprising at least three generations of business entity representations, and wherein one or more of the role-dependent configurable links connect business entity representations in neighboring generations, and one or more of the role-dependent configurable links connect business entity representations in non-neighboring generations.
 22. The computer readable storage medium of claim 21, wherein the first business entity representation is in a first generation of the business entity representations, and the second business entity representation is in a third, non-neighboring generation of the associated business entity representations.
 23. The computer readable storage medium of claim 19, wherein the request comprises a request for a business object of the first business entity representation, and wherein determining whether to grant the requested access is based upon whether the identified role-dependent configurable links connect the first business entity representation and the second business entity representation in the network data structure, the role within the second business entity representation assigned to the particular user, and a configuration of the business object.
 24. The computer readable storage medium of claim 19, wherein the particular user is granted the requested access when an identified role-dependent configurable link exists between the first business entity and the second business entity. 